$(function () {
    const emptyMessage = '没有未读通知';
    const notice = $('#notifications');

    //【由于上线后的地址不是直接从域名开始的，所以此处需要做点处理】
    var prefix = ""
    if (window.location.href.indexOf("/t/youpu") >= 0) {
        prefix = "/t/youpu";
    } else if (window.location.href.indexOf("/o/youpu") >= 0) {
        prefix = "/o/youpu";
    } else {
        prefix = "";
    }

    function CheckNotifications() {
        $.ajax({
            // 若检测到新消息，则将消息按钮变红
            url: prefix + '/notifications/latest-notifications/',
            // url: '{% url "youpu:notifications_latest_notifications" %}',
            cache: false,
            success: function (data) {
                if (!data.includes(emptyMessage)) {
                    notice.addClass('btn-danger');
                }
            },
        });
    }

    CheckNotifications();  // 页面加载时执行
    //Ajax定时访问服务端，不断获取最新消息，这里是3秒钟请求一次。
    window.setInterval(CheckNotifications, 3000);

    notice.click(function () {
        if ($('.popover').is(':visible')) {
            notice.popover('hide');
            CheckNotifications();
        } else {
            notice.popover('dispose');
            $.ajax({
                url: prefix + '/notifications/latest-notifications/',
                // url: '{% url "youpu:notifications_latest_notifications" %}',
                cache: false,
                success: function (data) {
                    notice.popover({
                        html: true,
                        trigger: 'focus',
                        container: 'body',
                        placement: 'bottom',
                        content: data,
                    });
                    notice.popover('show');
                    notice.removeClass('btn-danger')
                },
            });
        }
        return false;  // 不是False
    });
});

